builtin/show: Convert to direct return/decl-after-stmt style
authorColin Walters <walters@verbum.org>
Mon, 13 Mar 2017 00:53:28 +0000 (20:53 -0400)
committerAtomic Bot <atomic-devel@projectatomic.io>
Mon, 13 Mar 2017 15:03:25 +0000 (15:03 +0000)
I just happened to be reading this code; still testing
the waters for the new code style.  If we decide to do more
of this it's likely worth trying out a [Coccinelle](http://coccinelle.lip6.fr/)
patch or something.

Closes: #733
Approved by: jlebon

src/ostree/ot-builtin-show.c

index 6c45002a8df1b0208cc18a43cb87c1080b9b33f1..3aaa2303a9d5c5f7732e201160fa7b95464d4ca0 100644 (file)
@@ -52,17 +52,13 @@ do_print_variant_generic (const GVariantType *type,
                           const char *filename,
                           GError **error)
 {
-  gboolean ret = FALSE;
   g_autoptr(GVariant) variant = NULL;
 
   if (!ot_util_variant_map_at (AT_FDCWD, filename, type, TRUE, &variant, error))
-    goto out;
+    return FALSE;
 
   ot_dump_variant (variant);
-
-  ret = TRUE;
- out:
-  return ret;
+  return TRUE;
 }
 
 static gboolean
@@ -71,34 +67,23 @@ do_print_related (OstreeRepo  *repo,
                   const char *resolved_rev,
                   GError **error)
 {
-  gboolean ret = FALSE;
-  const char *name;
-  g_autoptr(GVariant) csum_v = NULL;
   g_autoptr(GVariant) variant = NULL;
-  g_autoptr(GVariant) related = NULL;
-  GVariantIter *viter = NULL;
-
   if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT,
                                  resolved_rev, &variant, error))
-    goto out;
-      
+    return FALSE;
+
   /* PARSE OSTREE_SERIALIZED_COMMIT_VARIANT */
-  related = g_variant_get_child_value (variant, 2);
-  
-  viter = g_variant_iter_new (related);
+  g_autoptr(GVariant) related = g_variant_get_child_value (variant, 2);
+  g_autoptr(GVariantIter) viter = g_variant_iter_new (related);
 
+  const char *name;
+  GVariant* csum_v;
   while (g_variant_iter_loop (viter, "(&s@ay)", &name, &csum_v))
     {
       g_autofree char *checksum = ostree_checksum_from_bytes_v (csum_v);
       g_print ("%s %s\n", name, checksum);
     }
-  csum_v = NULL;
-
-  ret = TRUE;
- out:
-  if (viter)
-    g_variant_iter_free (viter);
-  return ret;
+  return TRUE;
 }
 
 static gboolean
@@ -108,8 +93,6 @@ do_print_metadata_key (OstreeRepo     *repo,
                        const char     *key,
                        GError        **error)
 {
-  gboolean ret = FALSE;
-  g_autoptr(GVariant) value = NULL;
   g_autoptr(GVariant) commit = NULL;
   g_autoptr(GVariant) metadata = NULL;
 
@@ -117,7 +100,7 @@ do_print_metadata_key (OstreeRepo     *repo,
     {
       if (!ostree_repo_load_variant (repo, OSTREE_OBJECT_TYPE_COMMIT,
                                      resolved_rev, &commit, error))
-        goto out;
+        return FALSE;
       /* PARSE OSTREE_SERIALIZED_COMMIT_VARIANT */
       metadata = g_variant_get_child_value (commit, 0);
     }
@@ -125,28 +108,25 @@ do_print_metadata_key (OstreeRepo     *repo,
     {
       if (!ostree_repo_read_commit_detached_metadata (repo, resolved_rev, &metadata,
                                                       NULL, error))
-        goto out;
+        return FALSE;
       if (metadata == NULL)
         {
           g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND,
                        "No detached metadata for commit %s", resolved_rev);
-          goto out;
+          return FALSE;
         }
     }
-  
-  value = g_variant_lookup_value (metadata, key, NULL);
+
+  g_autoptr(GVariant) value = g_variant_lookup_value (metadata, key, NULL);
   if (!value)
     {
       g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND,
                    "No such metadata key '%s'", key);
-      goto out;
+      return FALSE;
     }
 
   ot_dump_variant (value);
-
-  ret = TRUE;
- out:
-  return ret;
+  return TRUE;
 }
 
 static gboolean
@@ -155,13 +135,12 @@ print_object (OstreeRepo          *repo,
               const char          *checksum,
               GError             **error)
 {
-  g_autoptr(GVariant) variant = NULL;
   OstreeDumpFlags flags = OSTREE_DUMP_NONE;
-  gboolean ret = FALSE;
 
+  g_autoptr(GVariant) variant = NULL;
   if (!ostree_repo_load_variant (repo, objtype, checksum,
                                  &variant, error))
-    goto out;
+    return FALSE;
   if (opt_raw)
     flags |= OSTREE_DUMP_RAW;
   ot_dump_object (objtype, checksum, variant, flags);
@@ -169,7 +148,7 @@ print_object (OstreeRepo          *repo,
   if (objtype == OSTREE_OBJECT_TYPE_COMMIT)
     {
       glnx_unref_object OstreeGpgVerifyResult *result = NULL;
-      GError *local_error = NULL;
+      g_autoptr(GError) local_error = NULL;
       g_autoptr(GFile) gpg_homedir = opt_gpg_homedir ? g_file_new_for_path (opt_gpg_homedir) : NULL;
 
       if (opt_gpg_verify_remote)
@@ -186,24 +165,20 @@ print_object (OstreeRepo          *repo,
 
       if (g_error_matches (local_error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND))
         {
-          g_clear_error (&local_error);
+          /* Ignore */
         }
       else if (local_error != NULL)
         {
-          g_propagate_error (error, local_error);
-          goto out;
+          g_propagate_error (error, g_steal_pointer (&local_error));
+          return FALSE;
         }
       else
         {
-          GString *buffer;
-          guint n_sigs, ii;
-
-          n_sigs = ostree_gpg_verify_result_count_all (result);
+          guint n_sigs = ostree_gpg_verify_result_count_all (result);
           g_print ("Found %u signature%s:\n", n_sigs, n_sigs == 1 ? "" : "s");
 
-          buffer = g_string_sized_new (256);
-
-          for (ii = 0; ii < n_sigs; ii++)
+          g_autoptr(GString) buffer = g_string_sized_new (256);
+          for (guint ii = 0; ii < n_sigs; ii++)
             {
               g_string_append_c (buffer, '\n');
               ostree_gpg_verify_result_describe (result, ii, buffer, "  ",
@@ -211,13 +186,10 @@ print_object (OstreeRepo          *repo,
             }
 
           g_print ("%s", buffer->str);
-          g_string_free (buffer, TRUE);
         }
     }
 
-  ret = TRUE;
-out:
-  return ret;
+  return TRUE;
 }
 
 static gboolean
@@ -228,7 +200,6 @@ print_if_found (OstreeRepo        *repo,
                 GCancellable      *cancellable,
                 GError           **error)
 {
-  gboolean ret = FALSE;
   gboolean have_object = FALSE;
 
   if (*inout_was_found)
@@ -236,62 +207,56 @@ print_if_found (OstreeRepo        *repo,
 
   if (!ostree_repo_has_object (repo, objtype, checksum, &have_object,
                                cancellable, error))
-    goto out;
+    return FALSE;
   if (have_object)
     {
       if (!print_object (repo, objtype, checksum, error))
-        goto out;
+        return FALSE;
       *inout_was_found = TRUE;
     }
-  
-  ret = TRUE;
- out:
-  return ret;
+
+  return TRUE;
 }
 
 gboolean
 ostree_builtin_show (int argc, char **argv, GCancellable *cancellable, GError **error)
 {
-  g_autoptr(GOptionContext) context = NULL;
-  glnx_unref_object OstreeRepo *repo = NULL;
-  gboolean ret = FALSE;
-  const char *rev;
-  g_autofree char *resolved_rev = NULL;
-
-  context = g_option_context_new ("OBJECT - Output a metadata object");
+  g_autoptr(GOptionContext) context = g_option_context_new ("OBJECT - Output a metadata object");
 
+  glnx_unref_object OstreeRepo *repo = NULL;
   if (!ostree_option_context_parse (context, options, &argc, &argv, OSTREE_BUILTIN_FLAG_NONE, &repo, cancellable, error))
-    goto out;
+    return FALSE;
 
   if (argc <= 1)
     {
       ot_util_usage_error (context, "An object argument is required", error);
-      goto out;
+      return FALSE;
     }
-  rev = argv[1];
+  const char *rev = argv[1];
 
+  g_autofree char *resolved_rev = NULL;
   if (opt_print_metadata_key || opt_print_detached_metadata_key)
     {
       gboolean detached = opt_print_detached_metadata_key != NULL;
       const char *key = detached ? opt_print_detached_metadata_key : opt_print_metadata_key;
       if (!ostree_repo_resolve_rev (repo, rev, FALSE, &resolved_rev, error))
-        goto out;
+        return FALSE;
 
       if (!do_print_metadata_key (repo, resolved_rev, detached, key, error))
-        goto out;
+        return FALSE;
     }
   else if (opt_print_related)
     {
       if (!ostree_repo_resolve_rev (repo, rev, FALSE, &resolved_rev, error))
-        goto out;
+        return FALSE;
 
       if (!do_print_related (repo, rev, resolved_rev, error))
-        goto out;
+        return FALSE;
     }
   else if (opt_print_variant_type)
     {
       if (!do_print_variant_generic (G_VARIANT_TYPE (opt_print_variant_type), rev, error))
-        goto out;
+        return FALSE;
     }
   else
     {
@@ -299,33 +264,32 @@ ostree_builtin_show (int argc, char **argv, GCancellable *cancellable, GError **
       if (!ostree_validate_checksum_string (rev, NULL))
         {
           if (!ostree_repo_resolve_rev (repo, rev, FALSE, &resolved_rev, error))
-            goto out;
+            return FALSE;
           if (!print_object (repo, OSTREE_OBJECT_TYPE_COMMIT, resolved_rev, error))
-            goto out;
+            return FALSE;
         }
       else
         {
           if (!print_if_found (repo, OSTREE_OBJECT_TYPE_COMMIT, rev,
                                &found, cancellable, error))
-            goto out;
+            return FALSE;
           if (!print_if_found (repo, OSTREE_OBJECT_TYPE_DIR_META, rev,
                                &found, cancellable, error))
-            goto out;
+            return FALSE;
           if (!print_if_found (repo, OSTREE_OBJECT_TYPE_DIR_TREE, rev,
                                &found, cancellable, error))
-            goto out;
+            return FALSE;
           if (!found)
             {
               g_autoptr(GFileInfo) finfo = NULL;
               g_autoptr(GVariant) xattrs = NULL;
-              GFileType filetype;
-              
+
               if (!ostree_repo_load_file (repo, rev, NULL, &finfo, &xattrs,
                                           cancellable, error))
-                goto out;
+                return FALSE;
 
               g_print ("Object: %s\nType: %s\n", rev, ostree_object_type_to_string (OSTREE_OBJECT_TYPE_FILE));
-              filetype = g_file_info_get_file_type (finfo);
+              GFileType filetype = g_file_info_get_file_type (finfo);
               g_print ("File Type: ");
               switch (filetype)
                 {
@@ -358,8 +322,6 @@ ostree_builtin_show (int argc, char **argv, GCancellable *cancellable, GError **
             }
         }
     }
-  ret = TRUE;
- out:
-  return ret;
+
+  return TRUE;
 }